home *** CD-ROM | disk | FTP | other *** search
/ IRIX Installation Tools & Overlays 2002 November / SGI IRIX Installation Tools & Overlays 2002 November - Disc 4.iso / dist / motif21_dev.idb / usr / Motif-2.1 / include / uil / Uil.h.z / Uil.h
C/C++ Source or Header  |  2002-10-15  |  4KB  |  158 lines

  1. /* 
  2.  *  @OSF_COPYRIGHT@
  3.  *  COPYRIGHT NOTICE
  4.  *  Copyright (c) 1990, 1991, 1992, 1993 Open Software Foundation, Inc.
  5.  *  ALL RIGHTS RESERVED (MOTIF). See the file named COPYRIGHT.MOTIF for
  6.  *  the full copyright text.
  7. */ 
  8. /* 
  9.  * HISTORY
  10. */ 
  11. /*   $XConsortium: Uil.h /main/11 1995/07/14 09:32:19 drk $ */
  12.  
  13. /*
  14. *  (c) Copyright 1989, 1990, DIGITAL EQUIPMENT CORPORATION, MAYNARD, MASS. */
  15.  
  16. /*
  17. **++
  18. **  FACILITY:
  19. **
  20. **      User Interface Language Compiler (UIL)
  21. **
  22. **  ABSTRACT:
  23. **
  24. **      This include file defines the set of definitions for use with
  25. **    UIL compiler callable interface.
  26. **
  27. **--
  28. **/
  29.  
  30. #ifndef Uil_h
  31. #define Uil_h
  32.  
  33. /*
  34. **
  35. **  INCLUDE FILES
  36. **
  37. **/
  38.  
  39.  
  40.  
  41. /*
  42. **
  43. **  Definition of Compiler Severity Statuses
  44. **
  45. */
  46.  
  47. typedef unsigned int    Uil_status_type;
  48. #define Uil_k_min_status    0
  49. #define Uil_k_success_status    0
  50. #define Uil_k_info_status    1
  51. #define Uil_k_warning_status    2
  52. #define Uil_k_error_status    3
  53. #define Uil_k_severe_status    4
  54. #define Uil_k_max_status    4
  55.  
  56. /*
  57. **
  58. */
  59.  
  60. typedef char (*string_array)[];
  61. #define CEIL(a,b) ((a) < (b) ? (a) : (b))
  62.  
  63.  
  64. /*
  65. **  Uil_command_type -- Input which describes how/what to compile.
  66. */
  67.  
  68. typedef struct  _Uil_command_type
  69. {
  70.     char        *source_file;        /* single source to compile        */
  71.     char        *resource_file;        /* name of output file        */
  72.     char        *listing_file;        /* name of listing file        */
  73.     unsigned int    include_dir_count;        /* number of directories in        */
  74.                         /* include_dir array        */
  75.     char        **include_dir;       /* directory to search for        */
  76.                         /* includes files            */
  77.     unsigned        listing_file_flag: 1;   /* produce a listing        */
  78.     unsigned        resource_file_flag: 1;  /* generate UID output        */
  79.     unsigned        machine_code_flag : 1;  /* generate machine code        */
  80.     unsigned        report_info_msg_flag: 1;/* report info messages        */
  81.     unsigned        report_warn_msg_flag: 1;/* report warnings            */
  82.     unsigned        parse_tree_flag: 1;        /* generate parse tree        */
  83.     unsigned        issue_summary: 1;       /* issue diagnostics summary    */
  84.     
  85.     unsigned int    status_update_delay;    /* Number of times a status        */
  86.                             /* point is passed before        */
  87.                         /* calling statusCB routine        */
  88.                         /* 0 means called every time    */
  89.     char        *database;            /* name of database file         */
  90.     unsigned        database_flag: 1;         /* read a new database file     */
  91.     unsigned        use_setlocale_flag: 1;  /* Enable calls to setlocale    */
  92. } Uil_command_type;
  93.  
  94.  
  95.  
  96. /*
  97. ** Uil_compile_desc_type -- Output information about the compilation including
  98. ** the compiler_version, data_structure_version, parse tree, and error counts.
  99. */
  100.  
  101. typedef struct _Uil_comp_desc
  102. {
  103.     unsigned int    compiler_version;   /* version number of Compiler */
  104.     unsigned int    data_version;        /* version number of structures */
  105.     char        *parse_tree_root;   /* parse tree output */
  106.     unsigned int    message_count[Uil_k_max_status+1];    
  107.                         /* array of severity counts */
  108. } Uil_compile_desc_type;    
  109.  
  110.  
  111.  
  112.  
  113. /*
  114. **  Uil_continue_type -- A value returned from a Uil callback routine which
  115. **  allows the application to specify whether to terminate or continue the
  116. **  compilation.
  117. */
  118.  
  119. typedef unsigned int    Uil_continue_type;
  120. #define Uil_k_terminate        0
  121. #define Uil_k_continue        1
  122.  
  123.  
  124.  
  125. /*
  126. **
  127. **  Entry Points
  128. **
  129. */
  130.  
  131. #ifndef _ARGUMENTS
  132. #define _ARGUMENTS(arglist) arglist
  133. #endif
  134.  
  135. #if defined(__cplusplus) || defined(c_plusplus)
  136. extern "C" {
  137. #endif
  138.  
  139. extern Uil_status_type Uil
  140.             _ARGUMENTS((
  141.             Uil_command_type *command_desc ,
  142.             Uil_compile_desc_type *compile_desc ,
  143.             Uil_continue_type (*message_cb )(),
  144.             char *message_data ,
  145.             Uil_continue_type (*status_cb )(),
  146.             char *status_data ));
  147.  
  148.  
  149. #if defined(__cplusplus) || defined(c_plusplus)
  150. }
  151. #endif
  152.  
  153. #undef _ARGUMENTS
  154.  
  155.  
  156. #endif /* Uil_h */
  157. /* DON'T ADD STUFF AFTER THIS #endif */
  158.